Almost every large enterprise uses various computer applications to automate its activities. Often, such different applications implement different User Interface (UI) technologies, e.g. eXtensible HyperText Markup Language (XHTML), Web Dynpro ABAP® developed by SAP AG, Flash® originally developed by Macromedia Inc., Flex® provided by Adobe Systems Inc., JavaScript® developed by Netscape Communications Corp., etc., running on different platforms, e.g., Java® Platform originally provided by Sun Microsystems Inc., .Net® Framework provided by Microsoft Corp, Adobe Integrated Runtime® cross-platform provided by Adobe Systems Inc., etc. In many cases, there is a need to integrate these applications for executing different tasks or business processes. Integration of applications may require integration on UI level to allow users to interact with the different applications.
Integration of applications based on different UI technologies would require employing different tools for communication between the applications. An example of such tools is a Flash® JavaScript® bridge for communication between Flex®-based and Hyper Text Markup Language (HTML) based applications, ActiveX® controls provided by Microsoft Corp, etc. Furthermore, when adding a new application built on different UI technology to a group of integrated applications, additional integration tools may need to be employed. Thus, the number of tools needed to build and support UI integration grows. Integration is performed in an unstructured manner, tools are deployed in an ad hoc basis, resulting in a disorganized grid that makes navigation and interaction between applications inefficient and difficult to maintain.